package com.guoheng.hazard.sys.mapper.hazard;

import com.guoheng.hazard.sys.model.dto.hazard.MonitorCameraPageDTO;
import com.guoheng.hazard.sys.model.dto.hazard.SafeOneMapDataNumDTO;
import com.guoheng.hazard.sys.model.entity.hazard.MonitorCamera;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 类功能描述:　MonitorCameraMapper
 *
 * @author Eternal
 * @date 2019-58-20 16:58
 */
@Mapper
public interface MonitorCameraMapper {

    int deleteByPrimaryKey(Long id);

    int insert(MonitorCamera record);

    int insertSelective(MonitorCamera record);

    MonitorCamera selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(MonitorCamera record);

    int updateByPrimaryKey(MonitorCamera record);

    List<MonitorCameraPageDTO> getMonitorCameras(@Param("entprId") Long entprId, @Param("entprName") String entprName, @Param("cameraNo") String cameraNo);

    /**
     * 方法功能描述:  查询摄像头所关联的indexCode
     *
     * @param id 摄像头id
     * @return String
     */
    String getIndexCode(Long id);

    /**
     * 方法功能描述: 重大危险源摄像头
     *
     * @param hazardId id
     * @return List<MonitorCamera>
     */
    List<MonitorCamera> getMonitorCamerasByHazardId(@Param("hazardId") Long hazardId);

    /**
     * 方法功能描述: 重大危险源摄像头数量，按企业分类
     *
     * @return  List<SafeOneMapDataNumDTO>
     */
    List<SafeOneMapDataNumDTO> getCameraNum();
}
